Programmable controllers are well known devices for operating industrial equipment, such as assembly lines and machine tools, in accordance with a stored program. In such controllers, the control program is stored in a memory and includes instructions which are read out in rapid sequence and executed to examine the condition of selected sensing devices on the controlled equipment, and to energize or deenergize selected operating devices on the controlled equipment contingent upon the status of one or more of the examined sensing devices. Other instructions are provided not only to manipulate single-bit input and output data representing the state of the sensing and operating devices, but also to perform arithmetic operations, timing and counting functions, and more complex processing operations.
Such instructions have become quite standardized in the industry and they are directly associated with the elements of a ladder logic diagram which is easily understood by control engineers. Program panels such as those, described in U.S. Pat. Nos. 3,798,612; 3,813,649 and 4,070,702 have been developed to assist the user in developing and editing ladder logic control programs comprised of these programmable controller instructions.
Users of programmable controllers desire a mechanism to inform the operator of the controlled equipment when a fault occurs or when servicing is required. For example, a sensor can be provided to detect when the level of lubricant in a reservoir has dropped to a level at which replenishing is required. It is desirable for the programmable controller to send a message informing a maintenance person that the lubricant is at a low level. In another case, the controller could count the number of machining operations performed by a given bit, and notify a machinist that the bit is approaching the point where sharpening typically is required.
Ladder logic instructions have been devised to transmit data from the programmable controller over a communication network to another device, such as a host computer. These instructions commonly are used to send information regarding the manufacturing process, such as the number of workpieces processed by the controlled equipment or data acquired by the controller from its sensing devices. However, in order to use this capability the user of the system had to create numerous rungs of the ladder logic program in order to send even a simple message and users did not find this feature easy to use. The complexity of the previous messaging techniques tended to discourage individuals from sending messages to warn of low fluid levels, dulling machine bits and the like.